#include <51func.h>
//void * threadFunc(void *arg){
//    long * pVal = (long *)arg;
//    printf("child, val = %ld\n", *pVal);
//}
//int main(int argc, char *argv[])
//{
//    long val = 1000;
//    pthread_t tid1,tid2,tid3;
//    pthread_create(&tid1,NULL,threadFunc,&val); // long * -> void *
//    ++val;
//    pthread_create(&tid2,NULL,threadFunc,&val); // long * -> void *
//    ++val;
//    pthread_create(&tid3,NULL,threadFunc,&val); // long * -> void *
//    ++val;
//    sleep(1);
//    printf("main , val = %ld\n", val);
//    return 0;
//}
void * threadFunc(void *arg){
    long  val = (long )arg;
    printf("child, val = %ld\n", val);
}
int main(int argc, char *argv[])
{
    long val = 1000;
    pthread_t tid1,tid2,tid3;
    pthread_create(&tid1,NULL,threadFunc,(void *)val); // long  -> void *
    ++val;
    pthread_create(&tid2,NULL,threadFunc,(void *)val); // long  -> void *
    ++val;
    pthread_create(&tid3,NULL,threadFunc,(void *)val); // long  -> void *
    ++val;
    sleep(1);
    printf("main , val = %ld\n", val);
    return 0;
}

